using System;
using System.Runtime.InteropServices;
namespace BMC.ARSystem
{
	[ARStructTypeInfo(Name = "ARFilterActionNotifyAdvanced", NumberOfMembers = 12u), ClassInterface, Guid("f80213fe-20da-4326-9cee-c9b14b6e9eee"), ProgId("BMC.ARSystem.AdvancedNotifyAction")]
	public class AdvancedNotifyAction : NotifyAction
	{
		[ARStructMemTypeInfo(Name = "from", Offset = 0u)]
		private string _from;
		[ARStructMemTypeInfo(Name = "replyTo", Offset = 1u)]
		private string _replyTo;
		[ARStructMemTypeInfo(Name = "cc", Offset = 2u)]
		private string _cc;
		[ARStructMemTypeInfo(Name = "bcc", Offset = 3u)]
		private string _bcc;
		[ARStructMemTypeInfo(Name = "organization", Offset = 4u)]
		private string _organization;
		[ARStructMemTypeInfo(Name = "mailboxName", Offset = 5u)]
		private string _mailboxName;
		[ARStructMemTypeInfo(Name = "headerTemplate", Offset = 6u)]
		private string _headerTemplate;
		[ARStructMemTypeInfo(Name = "footerTemplate", Offset = 7u)]
		private string _footerTemplate;
		[ARStructMemTypeInfo(Name = "contentTemplate", Offset = 8u)]
		private string _contentTemplate;
		[ARStructMemTypeInfo(Name = "reserved1", Offset = 9u)]
		private uint _reserved1;
		[ARStructMemTypeInfo(Name = "reserved2", Offset = 10u)]
		private uint _reserved2;
		[ARStructMemTypeInfo(Name = "reserved3", Offset = 11u)]
		private uint _reserved3;
		public string From
		{
			get
			{
				return this._from;
			}
			set
			{
				this._from = value;
			}
		}
		public string ReplyTo
		{
			get
			{
				return this._replyTo;
			}
			set
			{
				this._replyTo = value;
			}
		}
		public string Cc
		{
			get
			{
				return this._cc;
			}
			set
			{
				this._cc = value;
			}
		}
		public string Bcc
		{
			get
			{
				return this._bcc;
			}
			set
			{
				this._bcc = value;
			}
		}
		public string Organization
		{
			get
			{
				return this._organization;
			}
			set
			{
				this._organization = value;
			}
		}
		public string MailboxName
		{
			get
			{
				return this._mailboxName;
			}
			set
			{
				this._mailboxName = value;
			}
		}
		public string HeaderTemplate
		{
			get
			{
				return this._headerTemplate;
			}
			set
			{
				this._headerTemplate = value;
			}
		}
		public string FooterTemplate
		{
			get
			{
				return this._footerTemplate;
			}
			set
			{
				this._footerTemplate = value;
			}
		}
		public string ContentTemplate
		{
			get
			{
				return this._contentTemplate;
			}
			set
			{
				this._contentTemplate = value;
			}
		}
		public uint Reserved1
		{
			get
			{
				return this._reserved1;
			}
			set
			{
				this._reserved1 = value;
			}
		}
		public uint Reserved2
		{
			get
			{
				return this._reserved2;
			}
			set
			{
				this._reserved2 = value;
			}
		}
		public uint Reserved3
		{
			get
			{
				return this._reserved3;
			}
			set
			{
				this._reserved3 = value;
			}
		}
		public AdvancedNotifyAction()
		{
		}
		internal AdvancedNotifyAction(object[] rawData, Server server)
		{
			int[] indexSpec = new int[1];
			this.From = (string)Util.GetAt(rawData, indexSpec);
			this.ReplyTo = (string)Util.GetAt(rawData, new int[]
			{
				1
			});
			this.Cc = (string)Util.GetAt(rawData, new int[]
			{
				2
			});
			this.Bcc = (string)Util.GetAt(rawData, new int[]
			{
				3
			});
			this.Organization = (string)Util.GetAt(rawData, new int[]
			{
				4
			});
			this.MailboxName = (string)Util.GetAt(rawData, new int[]
			{
				5
			});
			this.HeaderTemplate = (string)Util.GetAt(rawData, new int[]
			{
				6
			});
			this.FooterTemplate = (string)Util.GetAt(rawData, new int[]
			{
				7
			});
			this.ContentTemplate = (string)Util.GetAt(rawData, new int[]
			{
				8
			});
			this.Reserved1 = (uint)Util.GetAt(rawData, new int[]
			{
				9
			});
			this.Reserved2 = (uint)Util.GetAt(rawData, new int[]
			{
				10
			});
			this.Reserved3 = (uint)Util.GetAt(rawData, new int[]
			{
				11
			});
		}
	}
}
